
package Attributes;

public class NANAttribute extends Attribute {
    
    /*
     * clase NANAttribute
     * 
     * Esta clase permite representar atributos no numericos (Not A Number Attributes).
     * 
     * Su valor solo se puede cargar por el constructor.
     * 
     * Sus metodos getValue y getFactor devuelven 0, 
     * para no afectar el comportamiento del algoritmo MAUT.
     * 
     * Su valor se accede mediante el metodo toString().
     * 
     */
    
    private String name;
    protected String value;

    public NANAttribute(String name, String value) {
        setName(name);
        this.value = value;
    }

    @Override
    public final String getName() {
        return name;
    }

    @Override
    public double getValue() {
        return 0;
    }

    @Override
    public double getFactor() {
        return 0;
    }

    @Override
    public final void setName(String name) {
        this.name = name;
    }

    @Override
    public void setValue(double value) {
    }

    @Override
    public void setFactor(double factor) {
    }

    @Override
    public String toString() {
        return value;
    }

    @Override
    public void setUmbral(double umbral, int flag) {
    }

    public boolean isExcluyente() {
        return false;
    }
}